package com.zzs.blog.website.service;

import com.github.pagehelper.PageInfo;
import com.zzs.blog.website.model.Vo.ContentVo;
import com.zzs.blog.website.model.Vo.ContentVoExample;

/**
 * @Author ZechariahZheng
 * @Date 2019/10/26 17:03
 * @Version 1.0
 * @description
 */
public interface ContentService {
    /**
     * 发布文章
     */
    void publish(ContentVo contents);

    /**
     * 查询文章返回多条数据
     */
    PageInfo<ContentVo> getContents(Integer p, Integer limit);

    /**
     * 根据id或slug获取文章
     */
    ContentVo getContents(String id);

    /**
     * 根据主键更新
     */
    void updateContentByCid(ContentVo contentVo);

    /**
     * 查询分类/标签下的文章归档
     */
    PageInfo<ContentVo> getArticles(Integer mid, int page, int limit);

    /**
     * 查询分类下的文章归档
     */
    PageInfo<ContentVo> myGetArticles(String category, int page, int limit);

    /**
     * 搜索/分页
     */
    PageInfo<ContentVo> getArticles(String keyword, Integer page, Integer limit);

    /**
     * 得到页数的文章
     */
    PageInfo<ContentVo> getArticlesWithpage(ContentVoExample contentVoExample, Integer page, Integer limit);

    /**
     * 根据文章id删除
     */
    void deleteByCid(Integer cid);

    /**
     * 编辑文章
     */
    void updateArticle(ContentVo contents);

    /**
     * 更新原有文章的category
     */
    void updateCategory(String ordinal, String newCatefory);
}
